package com.zrar.ak.gkpt.service.record;

import com.zrar.ak.gkpt.model.vo.UserVO;
import com.zrar.ak.gkpt.util.JsonPageResult;
import com.zrar.ak.gkpt.util.JsonResult;

/**
 * @ClassName: BusinessBidPurchaseSerice
 * @Description 采购中心招标采购Service层接口
 * @Author HuangKeXin
 * @Time 2020/04/4
 */
public interface IBusinessBidPurchaseService {
    /**
     * 招标基本信息保存
     * @param jsonResult
     * @param formDataJson
     * @param userVO
     * @return
     */
    JsonResult businessBidSave(JsonResult jsonResult, String formDataJson, UserVO userVO);

    /**
     * 招标基本信息修改
     * @param jsonResult
     * @param formDataJson
     * @param userVO
     * @return
     */
    JsonResult businessBidUpdate(JsonResult jsonResult, String formDataJson, UserVO userVO);

//    /**
//     * 采购信息保存
//     * @param jsonResult
//     * @param formDataJson
//     * @param userVO
//     * @return
//     */
//    JsonResult businessPurchaseSave(JsonResult jsonResult, String formDataJson, UserVO userVO);
//
//    /**
//     * 采购信息修改
//     * @param jsonResult
//     * @param formDataJson
//     * @param userVO
//     * @return
//     */
//    JsonResult businessPurchaseUpdate(JsonResult jsonResult, String formDataJson, UserVO userVO);

    /**
     * 根据建设单位编码获取招标信息与对应的采购信息
     * @param unitId
     * @param jsonResult
     * @return
     */
    JsonResult businessBidInfoGetByUnitId(JsonResult jsonResult, String unitId);

    /**
     * 根据建设单位编码将对应的招标信息置为无效
     * @param jsonResult
     * @param unitId
     * @param bidType :招标处理类型(1:招标基本信息和采购信息执行删除操作 2:采购信息执行删除操作)
     * @return
     */
    JsonResult deleteBusinessBidInfoByUnitId(JsonResult jsonResult, String unitId, String bidType);


    /**
     * 获取招标信息列表(分页模糊查询)
     * @param currentPage
     * @param pageSize
     * @param projectName
     * @return
     */
    JsonPageResult getBusinessBidInfoList(JsonPageResult jsonResult, int currentPage, int pageSize, String projectName,String bidWay);

    /**
     * 方案细化详细信息保存
     * @param jsonResult
     * @param formDataJson
     * @param userVO
     * @return JsonResult
     */
    JsonResult purchaseInfoSave(JsonResult jsonResult, String formDataJson, UserVO userVO);

    /**
     * 更新
     * @param jsonResult
     * @param formDataJson
     * @param userVO
     * @return
     */
    JsonResult purchaseInfoUpdate(JsonResult jsonResult, String formDataJson, UserVO userVO);


    /**
     * 根据基础信息id删除方案信息
     * @param basicsId
     * @return JsonResult
     */
    JsonResult deletePurchaseByBasicsId(JsonResult jsonResult,String basicsId);

    /**
     * 根据主键id查看方案信息
     * @param id
     * @return JsonResult
     */
    JsonResult queryPurchaseByUnitId(JsonResult jsonResult, String id);


}
